home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Cream of the Crop 26
/
Cream of the Crop 26.iso
/
program
/
qlib205.zip
/
QLIB.ZIP
/
H
/
VESA.H
< prev
next >
Wrap
C/C++ Source or Header
|
1996-11-30
|
3KB
|
74 lines
//*****************************************************************
//
// VESA library include file
//
//*****************************************************************
// Data structure for VESA function 4F00h ( Get VBE Information )
//
struct vesa_infoblock {
byte VbeSignature; // VBE Signature
word VbeVersion; // VBE Version
dword OemStringPtr; // Pointer to OEM String
dword Capabilities; // Capabilities of graphics cont.
dword VideoModePtr; // Pointer to Video Mode List
word TotalMemory; // Number of 64kb memory blocks
// Added for VBE 2.0
word OemSoftwareRev; // VBE implementation Software revision
dword OemVendorNamePtr; // Pointer to Vendor Name String
dword OemProductNamePtr; // Pointer to Product Name String
dword OemProductRevPtr; // Pointer to Product Revision String
byte _Reserved_[222]; // Reserved for VBE implementation
// scratch area
byte OemData[256]; // Data Area for OEM Strings
};
// Data structure for VESA function 4F01h ( Get mode Information )
//
struct vesa_modeinfoblock {
// Mandatory information for all VBE revisions
word ModeAttributes; // mode attributes
byte WinAAttributes; // window A attributes
byte WinBAttributes; // window B attributes
word WinGranularity; // window granularity
word WinSize; // window size
word WinASegment; // window A start segment
word WinBSegment; // window B start segment
dword WinFuncPtr; // pointer to window function
word BytesPerScanLine; // bytes per scan line
// Mandatory information for VBE 1.2 and above
word XResolution; // horizontal resolution in pixels or chars
word YResolution; // vertical resolution in pixels or chars
byte XCharSize; // character cell width in pixels
byte YCharSize; // character cell height in pixels
byte NumberOfPlanes; // number of memory planes
byte BitsPerPixel; // bits per pixel
byte NumberOfBanks; // number of banks
byte MemoryModel; // memory model type
byte BankSize; // bank size in KB
byte NumberOfImagePages; // number of images
byte _Reserved; // reserved for page function
// Direct Color fields (required for direct/6 and YUV/7 memory models)
byte RedMaskSize; // size of direct color red mask in bits
byte RedFieldPosition; // bit position of lsb of red mask
byte GreenMaskSize; // size of direct color green mask in bits
byte GreenFieldPosition; // bit position of lsb of green mask
byte BlueMaskSize; // size of direct color blue mask in bits
byte BlueFieldPosition; // bit position of lsb of blue mask
byte RsvdMaskSize; // size of direct color reserved mask in bits
byte RsvdFieldPosition; // bit position of lsb of reserved mask
byte DirectColorModeInfo;// direct color mode attributes
// Mandatory information for VBE 2.0 and above
dword PhysBasePtr; // physical address for flat frame buffer
dword OffScreenMemOffset; // pointer to start of off screen memory
word OffScreenMemSize; // amount of off screen memory in 1k units
byte __Reserved[206]; // remainder of ModeInfoBlock
};